Communication Monitoring System

ABSTRACT

A system for monitoring of integrity of a communication bus includes a communication bus; at least one transmitter configured to generate and transmit a signal on the communication bus; at least one receiver configured to receive a signal generated by the transmitter and transmitted on the communication bus; and a database of the transmitter. The database includes at least: device identification; expected rate of data transmittance; and device relative location along the link. The receiver is configured to receive the transmitted signal as well as any reflected signals arising from non-impedance matched section in the communication bus. A fault condition is identified by the occurrence of any of: a difference of the duration of the transmitted pulse from the duration of the received pulse; a difference of the measured transmitter rate of data transmittance from the database rate of data transmission.

The present application is a continuation of U.S. application Ser. No.14/559,966 filed on Dec. 4, 2014, which claims priority from U.S.Provisional Application No. 61/921,541 filed Dec. 30, 2013 andProvisional Patent Application No. 61/981,209 filed on Apr. 18, 2014,each of which is hereby incorporated herein by reference.

TECHNOLOGY FIELD

The present device and method relate to the field of communication busstatus diagnostics and in particular to real time detection of faults incommunication buses.

BACKGROUND

There are several architectures for transmitting information from oneelectronic device to another. A commonly used architecture is shown inFIG. 1. In this architecture the devices share a common communicationstructure, often called a data bus or communication bus. In thisarchitecture, each device connected to the bus can transmit informationon the bus, or receive any information transmitted on the bus. Inaddition the information transmitted on the bus can pass undistortedthrough each of the devices. The section of the communication busconnecting one device to another may be termed communication bus line orlink. The physical medium through which the signal is transported can bean electrical wire or optical fiber. The signal transmitted from onedevice to another device on the communication bus can be a change in thevoltage, an optical pulse, an electrical pulse with an underlying RF(radio frequency) modulation or similar implementations. Examples ofsuch buses are Mil-Std-1553, CAN, FlexRay and others. Since thetransmitted signal passes through multiple devices, it is clear that theconnection to each device should not cause any changes in the signal. Ina one dimensional communication bus, every device has at most two buslinks connecting it to other devices. In a two dimensional ormulti-dimensional communication bus there is at least one device withthree or more bus links connecting it to other devices. In particular,the devices, and the communication bus links should be impedance matchedto prevent reflections of the signal. Conversely, any situation in whichthere is a fault in the communication bus link, the fault and bus linkwould not be impedance matched and the result would be a reflectedsignal.

The communication buses described above can host a large amount ofdevices. A potential problem in these buses is that a fault in the buswould prevent the passage of information from devices before and afterthe fault. Current techniques to identify faults or failures in the busare too costly to support use in low cost applications which someindustries such as in-car communications require. U.S. Pat. No.7,812,617 to the same assignee, describes a method to identify the faultin a communication bus. The method is based on identifying reflectionsin the communication bus. The reflections are caused by the fault in oneof the bus links and are referred to as ‘signal tail’. U.S. Pat. No.7,812,617 suggest a method of identifying the location of the fault bymeasuring the timing of such multiple tails, and using triangulation toidentify the location of a fault.

GLOSSARY

“Communication bus”—as used in the current disclosure communication busmeans a structure connecting between different devices or modulesconfigured to receive and transmit signals from one or more sources ofthe signal to one or more devices or modules hosted by the bus.

“Bus link or line”—as used in the current disclosure means a continuouselectric or optical line extending through two or more devices ormodules on the bus.

“Data bus”—as used in the current disclosure communication bus means astructure connecting between different devices or modules configured toreceive and transmit data from one or more sources of the signal to oneor more devices or modules hosted by the bus.

“Impedance matched”—as used in the current disclosure means thecharacteristic impedance of the bus link is matched to thecharacteristic impedance of the device connected to the link. Also itmeans the impedance of the line is constant.

“Fault in the bus”—as used in the current disclosure means a portion ofa bus line or device hosted on the bus, which is not impedance matchedand causes a reflection in of the transmitted signal.

“Integrity of the bus”—as used in the current disclosure means that nofaults are identified in the line.

“Physical medium”—as used in the current disclosure means the material,composition and form (e.g. copper wire, optical fiber, etc.) of thecommunication bus link.

“Signal tail”—as used in the current disclosure means the temporalfunction of the last part of the signal.

“Signal width”—as used in the current disclosure means the elapsed timefrom a threshold level crossing of the rising part of the signal, to athreshold level crossing of the falling part of the signal.

“Signal rise time”—as used in the current disclosure is the timerequired for the signal to rise to its ON state.

“Signal fall time”—as used in the current disclosure is the timerequired for the signal to return to OFF state.

“Pulse start”—as used in the current disclosure is the section of pulseafter crossing the threshold of the rising signal.

“Pulse end”—as used in the current disclosure is the section of thepulse before crossing the threshold of the falling signal.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is an example of existing communication bus architecture forconnecting multiple devices;

FIG. 2 is an example of a fault in a communication bus;

FIG. 3 is a schematic illustration of a fault detection process in acommunication bus according to an example;

FIG. 4A is an example of system of FIG. 1, with receiver as astand-alone device on the communication bus;

FIG. 4B is an example of system of FIG. 1, with a receiver integratedinto a device on the communication bus;

FIG. 5 is an example of a system including a section withnon-transmitting devices;

FIG. 6 is an example of assessment of the distance of the fault from thetransmitting device based on a received signal which is a combination oftransmitted signal and reflected signal from fault;

FIG. 7 is an example of a ringing phenomenon that could be caused by useof short pulse;

FIG. 8 is an example of pulse width measurement using signal levelcrossing and adverse effect of ringing;

FIG. 9 is an example of a pulse resulting from a sum of a pulse withshort rise and fall time and a pulse with long rise and fall time.

DESCRIPTION

A typical known communication bus is shown in FIG. 1. This bus includesa number of devices 101, 104, 106, 108, 110, 112, and 114, which areconnected to the communication bus, 120. The communication between thedevices is achieved by the communication bus, 120. In the course ofnormal communication bus 120 operation, signals are transmitted alongthe bus, and through each of the devices, without changes or distortionor with potentially small changes in the signal which meets the definedbounds of the communication bus 120. In particular the reflection ofsignals transmitted (along the bus) along the communication link areminimized.

FIG. 2 is an example of a fault in a communication bus. The fault 202violates the integrity of the communication bus 120. The fault, 202could be any of the following:

-   -   A cut or open section in the communication link;    -   In case of a two wire link, a short circuit between the two        wires;    -   A short circuit between one or more of the wires to the ground;    -   An intermittently open (disconnected) connector;    -   Corrosion causing increased resistance; or    -   Other similar such occurrences.

The communication buses described above can host a large amount ofdevices. A potential problem in these buses is that a fault in thecommunication bus would prevent the passage of information from devicesbefore the fault and after the fault. U.S. Pat. No. 7,812,617 to thesame assignee, describes a method to identify the communication linkwith a fault in a two dimensional network. The method is based onidentifying reflections in the communication bus. The reflections arecaused by the fault in the line and referred to as ‘signal tail’. U.S.Pat. No. 7,812,617 suggest a method of identifying the location of thefault by measuring the timing of such multiple tails, and usingtriangulation to identify the location of a fault.

The above described method requires knowledge of the timing of thesignals in the communication bus. While this is feasible for some of thecommunication links, the time delay caused by each device is unknown.Hence in a typical communication bus, the time delay of the signals fromone location to another is unknown. This distorts the triangulationresults and renders them unreliable. Hence it is desired to have amethod, which does not require knowledge of the time delay of eachdevice connected to the communication bus.

The current method supports accurate diagnostic of a bus fault conditionand identifying the fault location by comparing the time duration of thetransmitted pulse to the received pulse. The pulse time duration can bemeasured using a simple and low cost timer-counter which is triggered tostart to count at one threshold crossing and triggered to stop the countat a second threshold crossing. The total counts provides the timeduration of a key event in the signal. In this manner, this methodprovides for analysis of complex analog signals by using identifyingtheir temporal length using a low cost and simple temporal counter.

In all communication bus fault cases the following could occur:

All devices on one side, for example 206 of the fault 202 will stopcommunicating with devices on the other side 210 of the fault. Forexample, in FIG. 2, devices located on side 206 of communication bus 120will stop communicating with devices located on side 210 ofcommunication bus 120.

Signals transmitted towards the fault 202 will be partially reflectedsince the fault 202 is not impedance matched to the communication buslink 204.

The present disclosure suggests a method, which can identify the faultlocation without prior knowledge of the delay caused by each deviceconnected to the communication bus. FIG. 3 is a schematic illustrationof a fault detection process in a communication bus according to anexample. The processor or method includes construction of a database ofsome or all devices (Block 304) which are connected to the bus 120 andadditional information regarding their relative location, transmissionrate and typical transmission codes.

Measurement of the rates of the transmission on the communication bus120 and comparing the rate of each device transmission to the database(Block 308) could be initiated following the database construction. Afault, such as for example fault 202 or a malfunctioning device could beidentified when the rate of transmission becomes different than that ofthe database (Block 312).

Block 320 identifies the communication link (204) in which there is afault. The link is identified by finding one transmitting device, forexample, (104) and an adjacent non transmitting device (106). Followingfault (202) identification, fault location could be determined (Block320) by finding the distance of the fault (202) from the transmittingdevice (104), which could be done by comparing width of received signalto width of transmitted signal from the device (104)closest to thefault(202) location.

Fault 202 can also be a partial fault resulting in an open connection injust one of the wires of the communication link. Due to the differentialnature of the communication link, such a fault will cause all thesignals transmitted from a device and passing through the fault to beshorter than normal. As an example if device 106 transmits a signalcomposed of a pulse with a width of 6 micro seconds. Device 104 willreceive this pulse with a width of 5.5 microseconds. By providing amethod to measure pulse width as will be detailed later, the system canidentify also faults of a single wire disconnection.

The database could be generated for example a-priori by thecommunication bus manufacturer. As another example, the deviceinformation is appended into the database as each of the devices isconnected to the communication bus. In another example, the database canbe constructed from the transmitted signals during the operation of thecommunication bus. The database is used to identify a fault occurrenceas well as find the bus section which connects two devices in which thefault is occurring. Fault occurrence is identified when certain deviceson the communication bus stop transmitting. For example, in FIG. 4, thedatabase is being constructed by signals received by receiver 401. Inthe case of a fault, for example such as fault 202, the transmissionfrom devices 106, 108, and 114 will cease to be received by receiver401.

In the case, for example of a CAN bus usually used in automobiles orcars, the devices could periodically transmit information such as enginespeed, oil pressure, temperature, gas pedal status, etc. Each devicehosted by the communication has a rate of information transmission,defined by its operation. The data base could include at least thefollowing information:

-   -   Device ID,    -   In some cases, device typical messages,    -   Rate of data transmittance, i.e. how often does the device        transmit,    -   Device relative location along the link.

The data base could be constructed when the communication bus isassembled. In this case the ID and information of the devices could beentered into the database, either manually or automatically. Thestructure of the communication bus is fixed in a given product module,i.e. the communication bus of a certain car model is identical in allcars of the same model. In one example, the database can be defined bythe manufacturer of the product module for a given product module. Inanother example, the database can be constructed during the operation ofthe communication bus. In this case, the device information can beidentified by a passive receiver on the bus which records the signals.The relative location of the devices along the communication bus isstill defined by the manufacturer of the bus, however the informationpertaining to the messages and communication rate, could be obtained byanalyzing the data received by the receiver. In still a further example,the database can be constructed by actively interrogating the devices onthe bus. A designated transmitter could send a signal which requires theresponse of all the devices. The frequency of data transmission andinformation types can be assembled by a passive receiver as describedabove.

Use of a receiver facilitates block 308 implementation. FIG. 4A is anexample, of a system of FIG. 1 with receiver 401implemented as astandalone device, on the communication bus. FIG. 4B is an example, of asystem of FIG. 1 with receiver 401, which is integrated in device 101.Both FIG. 4A and FIG. 4B show receiver (401) connected to thecommunication bus. Receiver (401) continuously monitors all signals onthe communication bus. A processing unit (402) built-in into receiver401 (FIG. 4B) is configured to process the signals, maintain thedatabase and compare new signals to the database. The processing unit(402) could be further connected to an external system. The externalsystem can be used to record the operation of the receiver, maintain andupdate the database, provide a communication port for servicing thereceiver or removing the recorded data. The connection can be with awireless connection such as Bluetooth, WiFi, Zigbee, GSM, or other formsof wireless communication. The processing unit can also be connected toa non-volatile memory device such as hard disk, USB disk drive or otherSolid State memory device. As a signal is received by receiver 401 it iscompared to the database. For example, the database can contain adesignation of the last signal received. Periodically, at a perioddetermined by the rate of messages on the bus, and the required rate ofalarm, the database is scanned. The standard rate of transmission, asrecorded in the database, of each device is compared to the actualtransmission rate of the device. As an example, the database can bescanned at the rate of the slowest device messaging. Alternatively inanother example, the database can be scanned at the required alarm rate,e.g. 10 ms or other predetermined rate. In one example, alarms can betriggered when one or more devices are late to transmit at theirstandard transmission rate. For example a fault can occur, when there iseither an open termination or short circuit termination, or connectionto a local or global ground terminal. The termination or connection canbe temporary such as an intermittent connector problem or permanent suchas a cut in the link. The open termination or short circuit termination,or connection to a local or global ground terminal will create anon-impedance matched section in the communication bus. Signals arrivingtowards the non-impedance matched section will be reflected back, andwill not cross the termination. As a result the devices on the same sideof the termination as the receiver (401) will have expanded signal widthcompared to the transmitted signal. Signals from devices on the otherside of the termination as the receiver (401) will not be received bythe receiver since they cannot pass the non-impedance matched section.

The threshold for alarm can be defined for both the number of devices,as well as the number of missed messages or time delay of expectedmessage. Once an alarm is triggered, the system activates block 320. Inblock 320, all devices which are late to transmit are identified. Usingthe location information of the devices, the system identifies thetransmitting and non-transmitting devices on the communication bus.

In another example the receiver (401) and processing system (402)monitors not only the transmission rate of the different devices butalso the pulse width of the received signals. In the case of a fault,either an intermittent fault or a constant fault in the line, the pulsewidth of the received signals will be increased. The reason for theincrease in pulse width is shown in FIG. 6. The received pulse is nowcomposed of the transmitted signal (602) with a reflected signal fromthe fault. The reflected signal is an attenuated, time delayed replica(604) of the transmitted pulse (602). The result is an expanded width ofthe received pulse. The threshold for an alarm indicating a fault can bea combination of:

-   -   devices which are late to transmit or which transmissions have        stopped as compared to their transmission rate in the database,    -   devices whose transmission is received, whose pulse width has        increased compared to the transmitted pulse,    -   a combination of the above.

In another example, device 401 includes a transmitter. The transmitterperiodically interrogates the communication bus by sending a messagewhich requires the reply of all devices on the bus. An example of such amessage is a programming signal which is used to check the readiness ofthe devices before programming them via the bus. Another example of apotential signal a ‘1’ followed by a set number of zeros. In somesystems such a signal has the highest priority in the system and wouldcause all the devices in the system to respond. In these examples, afterreceiving such a signal, all devices on the bus will respond with amessage. The response from all the devices is received and analyzed bythe receiver of 401 in a similar manner as described above. If a devicedoes not answer the response, the receiver of 401 and processing system402 can identify the existence of a fault between the non-answeringdevice and the nearest device to answer. The periodic transmission from401 can enhance the rate of detection of faults on the bus to a ratedefined by the design of 401 and not at a rate defined by the system anddevices on the bus.

FIG. 5 is an example of a system including a section withnon-transmitting devices. Numeral 502 marks the section that includesdevices 106, 108, and 114 which are not received by receiver 401. Itshould be noted devices 106, 108, and 114 can continue to transmit evenwhen they are not received. Communication link 204 between atransmitting device (104) and a non-transmitting device (106) is thelink in which a fault exists. In an example the link contains aconnector this can provide sufficient information to locate the faultattributed to a connector. In another example, the link can be visuallyinspected for signs of corrosion or tear.

Assessment of the distance of the fault from the transmitting devicecould be (Block 324) done by comparing the received signal width withthe transmitted signal width. The signal width means the elapsed timefrom a threshold crossing of the rising part of the signal, to athreshold crossing of the falling part of the signal. FIG. 6 is anexample of a received signal received by receiver. Signal 620 in FIG. 6is composed of two underlying signals, the transmitted signal 604, whichtravelled towards the receiver, and the reflected signal 608 whichtravelled towards the fault and was then reflected towards the receiver.The signal reflected by the communication bus, non-impedance matchedsection, is an attenuated, time delayed replica (604) of the transmittedpulse (602). The resulting signal (606) width (608), is the width of theoriginal signal (620) expanded by the time delay, (610), of the signalas it transverse the communication link from the transmitter to thefault and back. In most practical systems, the signal will have anon-negligible rise and fall time. FIG. 6 is an example where the timerequired for the signal to rise (614), also called signal rise time, andthe time required for the signal to return to its nominal value (612),also called signal fall time, obscures the signal width expansion due tothe reflected signal. Accordingly, the minimal distance at which faultscould be identified is determined by the signal rise time and fall time.

If the Fault is close to the transmitter of this pulse, the signalreflected from the fault reaches the receiver in a short time. For faultdistance detection it is required this time is longer than pulse risetime. For example, a fault at a distance of 1 meter would return echowithin 11 ns. If the rising edge, 614, is longer than 11 ns, thecombined 606 signal will have a faster rising edge after 11 ns. It willthen pass the threshold, 705 at a shorter time. The timer will startcounting earlier and the resulting pulse width will be longercorresponding to a fault farther away. A faster pulse rise time reducesthis problem.

In most cases, the signal rise and fall time is determined by the bussignal propagation characteristics. Reducing the rise and fall time isadvantageous to enhance the accuracy of measurement, however reducingthe rise and fall time can create a ringing phenomenon which can thencause an error in the measurement. To summarize, the receiver is furtherconfigured to receive the transmitted signal as well as any reflectedsignals arising from non-impedance matched section in communication busand wherein a time difference between transmitted pulse width andreceived pulse width indicates a distance between the non-impedancematched section and the transmitter on the communication bus.

FIG. 7 is an example of a ringing phenomenon that could be caused by useof short pulse. Attempts to reduce the rise or fall time of the signalusually result in a ringing of the signal at the transition points. FIG.7 shows that the pulse start is determined by a crossing of signal level705. Level 705 can be set for example at 20, 50 70% or other signalvalue up to the maximum signal level of the bus. The specific value isoften determined by the communication bus specification or standard. Thepulse end is determined by a crossing of signal level 710. Similarly forsignal level marked 705, the level height of 705 could be set forexample at 20, 50 70% or other number up to the maximum signal level.The specific value is typically determined by the relevant communicationbus specification or existing standard. FIG. 7 is an example of a shortpulse use that results in a wrong pulse width reading due to the ringingphenomena. In FIG. 7 the pulse threshold criteria is subject to crossingby the signal ringing, which results in an erroneous pulse width readingto overcome this problem, a modified transceiver could be used toprovide an asymmetric signal where the rise and fall time of the signalis different.

FIG. 8 is an example of pulse width measurement using signal levelcrossing and adverse effect of ringing. The pulse features an asymmetricrise and fall time. The front or leading edge of the pulse may have aringing effect to it. However the front edge ringing does not affect therising signal threshold 705, while the tail of the signal has no ringingthat could result in a non-ambiguous crossing of level 710.

The asymmetric signal can be generated using a variety of techniquesincluding digital signal processors, microcontrollers and other meansfor creating digital signals. FIG. 9. Is an example of producing theasymmetric pulse shape using a combination of two transmitters. Onetransmitter has a short pulse rise and fall time with ringing at thetransition level (701), while the other transmitter has long rise andfall time with no ringing at level (601). The sum of the two pulsesresults in the desired pulse shape (901). The resulting pulse featuresfast rise time and the long pulse fall time does not cause ringing atthe end of the pulse. An example of devices that could be used to createsuch a pulse are the RS485 10 MHz transceiver commercially availablefrom a variety of suppliers providing the fast rise time, and standardCAN bus transceiver featuring the longer fall time. In this example thefinal signal will have a rise time of 10 ns and fall time of 40 ns.Additional examples include a micro controller or programmable deviceswhich can modulate the desired voltage on the communication bus.

What is claimed is:
 1. A system for monitoring of integrity of acommunication bus said system comprising: a communication bus; at leastone transmitter configured to generate and transmit a signal on thecommunication bus; at least one receiver configured to receive a signalgenerated by the transmitter and transmitted on the communication bus;and a database of said transmitter; wherein the database comprises atleast: device identification; expected rate of data transmittance; anddevice relative location along the link; wherein the receiver is furtherconfigured to receive the transmitted signal as well as any reflectedsignals arising from non-impedance matched section in the communicationbus; and wherein a fault condition is identified by the occurrence ofany of: a difference of the duration of the transmitted pulse from theduration of the received pulse; a difference of the measured transmitterrate of data transmittance from the database rate of data transmission.2. The system according to claim 1, wherein the communication bus is atleast one of a group of buses consisting of CAN bus, Mil-Std-1553, andFlexRay.
 3. The system according to claim 1, wherein the signalreflected by the communication bus non impedance matched section is anattenuated, time delayed replica of the transmitted pulse.
 4. The systemaccording to claim 1, wherein the non-impedance matched sections of thecommunication bus are either an open termination or short circuittermination, or connection to a local or global ground terminal.
 5. Thesystem according to claim 1, wherein the signal width is determined bytime difference between a level crossing of leading pulse edge and alevel crossing of trailing signal tail.
 6. The system according to claim1, wherein the transmitted signal is configured to have a rise time ofless than 10 ns and at least twice as fast as a signal fall time of lessthan 40 ns.
 7. The system according to claim 1, wherein the transmittedsignal is obtained from a combination of two symmetrical transmitterswherein each transmitter generates a signal with different signal riseand fall time.
 8. The system according to claim 1, wherein thetransmitted signal is configured to have a rise time of less than 10 nsand a signal fall time of less than 40 ns.
 9. The system according toclaim 1, wherein the transmitted signal is obtained from a combinationof two symmetrical transmitters wherein each transmitter generates asignal with different signal rise and fall times.